前面介紹跑node.js應用程式的container及redis的container
當然我們可以在node.js container底下安裝redis,然而以後要擴充node.js server的時候會有問題,redis server無法被多個container共用。
因而拆成兩個container是比較好的做法,但兩個container要怎麼通訊?
docker提供docker network來設定networking,比較複雜。
使用docker-compose CLI容易的多
透過docker-compose.yml設定檔,可以將多個container形成封閉網路,container彼此透過name來彼此通訊
在專案根目錄底下,新增docker-compose.yml
#目前docker-compose版本是3
version: '3'
#在Services下列出內部網路相關的container
services:
# node.js container name
nestapp:
# 可以指定Dockerfile build image
build: .
# 設定port mapping
ports:
-'8080:3000'
# redis container name
redis-server:
# 指定由image建立container
image: 'redis'
要啟動這一組containers:
明天繼續